package com.hw.model.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.hw.model.dto.doctor.DetailQueryDTO;
import com.hw.model.entity.ClientPO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hw.model.vo.doctor.DoctorBaseVO;
import com.hw.model.vo.doctor.DoctorListVO;
import com.hw.model.vo.doctor.DoctorPhoneListVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;

import java.util.List;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author 作者
 * @since 2023-03-06
 */
@Component
public interface ClientMapper extends BaseMapper<ClientPO> {
    /**
     * @descrition 获取医生列表
     * @author lipeng
     * @date 2023/3/9
     * @param detailQueryDTO
     * @return com.baomidou.mybatisplus.extension.plugins.pagination.Page<com.hw.model.vo.doctor.DoctorListVO>
     */
    Page<DoctorListVO> getDoctorList(Page page,@Param("detailQuery") DetailQueryDTO detailQueryDTO);

    /**
     * @descrition 获取医生列表
     * @author lipeng
     * @date 2023/3/9
     * @param detailQueryDTO
     * @return com.baomidou.mybatisplus.extension.plugins.pagination.Page<com.hw.model.vo.doctor.DoctorListVO>
     */
    List<DoctorPhoneListVO> getDoctorPhoneList(@Param("detailQuery") DetailQueryDTO detailQueryDTO);

    /**
     * @descrition 通过名称获取医生信息
     * @author lipeng
     * @date 2023/3/9
     * @param doctorName
     * @return com.baomidou.mybatisplus.extension.plugins.pagination.Page<com.hw.model.vo.doctor.DoctorListVO>
     */
    List<DoctorBaseVO> getDoctorListByName(@Param("doctorName") String doctorName);

}
